[ p(' hanoi ) ( n ( 1 ) , v(' A ) , v(' B ) , v(' C ) , listCons ( p(' to ) ( v(' A ) , v(' B ) ) , v(' Zs ) ) , v(' Zs ) ) . p(' hanoi ) ( v(' N ) , v(' A ) , v(' B ) , v(' C ) , v(' Xs ) , v(' Zs ) ) :- gt ( v(' N ) , n ( 1 ) ) , is ( v(' N1 ) , minus ( v(' N ) , n ( 1 ) ) ) , p(' hanoi ) ( v(' N1 ) , v(' A ) , v(' C ) , v(' B ) , v(' Xs ) , listCons ( p(' to ) ( v(' A ) , v(' B ) ) , v(' Ys ) ) ) , p(' hanoi ) ( v(' N1 ) , v(' C ) , v(' B ) , v(' A ) , v(' Ys ) , v(' Zs ) ) . p(' test ) ( v(' N ) , v(' Moves ) ) :- p(' hanoi ) ( v(' N ) , n ( 1 ) , n ( 2 ) , n ( 3 ) , v(' Moves ) , listNil ) . ] ; p(' queens ) ( n ( 5 ) , v(' M ) ) ?